package com.minis.beans.factory.support;

import com.minis.BeansException;
import com.minis.beans.factory.BeanFactory;

import java.util.Map;

/**
 * 功能描述
 *
 * @author wanghongqian
 * @date 2023/10/18 18:52
 */
public interface ListableBeanFactory extends BeanFactory {
    boolean containsBeanDefinition(String beanName);

    int getBeanDefinitionCount();

    String[] getBeanDefinitionNames();

    String[] getBeanNamesForType(Class<?> type);

    <T> Map<String,T> getBeanOfType(Class<T> type) throws BeansException;
}
